home *** CD-ROM | disk | FTP | other *** search
/ PC-SIG: World of Games / PC-SIG World of Games (CDRM1080710) (1993).iso / ENT / DISK0001.ZIP / WOMBATS.DOC < prev    next >
Text File  |  1986-06-10  |  27KB  |  637 lines

  1.           {H} {H}  Wombats! {H} {H}
  2.  
  3.   A word-problem generating game
  4.  
  5.  
  6.  
  7. by Michael Potts
  8. the Caspar Institute
  9.  
  10. 1 January 1986
  11. { version 2.0 }
  12.  
  13.  
  14. { press any key to skip the instructions. }
  15.  
  16.     Wombats was written to help 7 to 11 year-old learners master
  17. word problems and number sentences. Since I expect the program to
  18. engage this audience across as much of their learning spectrum as
  19. possible, vocabulary for the skeletal sentences is at an
  20. appropriate level, precision in capitalization is insisted upon,
  21. and the problems assume a greater mastery of addition and
  22. subtraction than of the two dimensional operations. Wombats 
  23. appeals to the audience's love of fantasy and humor, knowing that
  24. instruction by computer can be less than fun.
  25.  
  26.     In the classroom, Wombats attracts and engages most students
  27. for awhile, but some students willingly become repeat players. I
  28. try to extend to them the same consideration I want from programs
  29. I use for my own work and enjoyment: if a learning program, or
  30. any program that I return to again and again, forces me to review
  31. a lengthy set of credits, instructions, and warnings every time I
  32. start it, I get impatient. I'm here to work, computer, so let's
  33. get down to it! 
  34.     In Wombats, impatience is accommodated. Pressing [Return]
  35. twice in rapid succession gets you past the introduction quickly.
  36. (A third [Return] gets you in trouble. Discerning when one may
  37. safely be impatient, and when one should give a full and
  38. thoughtful answer, is, after all, one of the most important
  39. learnings one may accomplish. When Wombats asks what to call you,
  40. it is best to answer.) 
  41.     For the patient and curious, Wombats offers instructions:
  42.  
  43.                    {H} {H}  Wombats! {H} {H}
  44.  
  45.      This program makes up word problems ...with your
  46. help. The computer - that's me - will ask you for names
  47. of people and things to put in the problems it invents.
  48.  
  49.      Before we start, you must tell me the hardest
  50. operation you want. For example, if you choose Subtraction,
  51. the problems will include Addition, too. Next, tell me the
  52. Largest number you want to work with. 99 is a good choice,
  53. but 9 is good for your first game, and 500 is very hard.
  54. (Press [Return] only if you want to use standard settings.)
  55. Finally, I'll ask for the names of five favorite things.
  56. I will reject names of persons or things longer than
  57. 16 letters, OR that I think are nonsense. When naming
  58. things, write the word for ONE thing, or I will make up
  59. problems about thingSS! You can press Return at any time,
  60. and I will choose numbers and things for you.
  61.  
  62.      Press any key to read more, or [Esc] to play.
  63.  
  64.     Some people object to personifying the computer by letting
  65. it calls itself "I", humans are, after all, superior to the
  66. products of silicon-based technology, and thus uniquely entitled
  67. to "I" and "me". Theory and in-bred distaste for the pathetic
  68. fallacy aside, children (and almost all other computer users) are
  69. comfortable thinking about computers and other pets as persons of
  70. a possibly limited sort, but persons nonetheless. I want Wombats
  71. to be an enabler, working as a patient, predictable, and
  72. supportive coach to the player, so I endow it with a synthetic
  73. personality in the instructions, which are meant to be read by
  74. the player, not necessarily a teacher.
  75.     Instructions like this, printed on paper, are for scholars
  76. or those of us who prefer to see directions on a non-volatile
  77. medium like paper. The on-screen instructions are a middle
  78. ground, for the timid, curious, or forgetful, and we must
  79. remember our audience.
  80.     The best way to learn to play a game should be, to play it.
  81. This exhortation is hardly needed by younger players, and the
  82. play of the program should be sufficiently self-explanatory to
  83. help them through the first rounds. The challenge for a
  84. programmer is to anticipate all the possible wrong answers - an
  85. instructive exercise which clearly separates theoreticians from
  86. practical teachers who have seen it all! Programs like Wombats,
  87. which have been through years of classroom testing, acquire deep
  88. layers of error trapping to help the neophyte. These elaborations
  89. of the mainstream of the program may take more time to perfect
  90. than the mainstream itself, and will be used only rarely; for
  91. their users, they can make the difference between enjoyable
  92. learning and frustrated rejection.
  93.  
  94. How Wombats gets         Wombats chooses numbers differently for  
  95. problems:            addition and subtraction, the one-           
  96. a sidetrip for       dimensional operations, and multiplication   
  97. programmers          and division, the two-dimensional. For the                         former, any number up to and including the   
  98.                      maximum allowed may appear in the top of the 
  99.                      problem. Because we have identified the      
  100.                      audience for this program to be children who 
  101.                      have mastered the one-dimensional operations,
  102.                      and are mastering the two-dimensional, the   
  103.                      maximum number to appear in multiplication   
  104.                      and division problems, including the result, 
  105.                      will be the specified Largest number; the    
  106.                      operands will be less than or equal to the   
  107.                      square root of the largest number. If, for   
  108.                      example, we had allowed 99 as our largest    
  109.                      number, the program might pose the problem   
  110.                      99 + 99 = ? but would never ask for more than
  111.                      9 * 9 = ? or 81 / 9 = ? .                    
  112.    
  113.                    {H} {H}  Wombats! {H} {H}
  114.  
  115.  Problem control:
  116.  
  117. hardest Operation:
  118.  
  119.      1=Add  2=Subtract  3=Multiply  4=Divide
  120.  
  121.                  your choice ? 4
  122.  
  123.          Largest number in any problem ? 99
  124.  
  125.               5 favorite objects:
  126.  
  127.                     1 :>wombat
  128.                     2 :>plum blossom
  129.                     3 :>backhoe
  130.                     4 :>eggplant
  131.                     5 :>teddy bear
  132.  
  133. What do I call you?  >Damiana
  134.  
  135.     If a player is ready to attempt problems of standard
  136. difficulty - all operations, with numbers as large as 99 - and
  137. will accept the computer's inventory of favorite objects, she may
  138. press [Return] when asked to choose the hardest Operation, and
  139. the entries will be made by the computer, and the player will be
  140. asked for an appellation. Experience shows that children will
  141. frequently "fool" the computer by offering a pseudonym. The
  142. persistance of the computer in calling them anything they choose
  143. is strangely delightful, and a clue to the success of Wombats.
  144.     As soon as these parameters are completed, the play begins.
  145.  
  146. Playing WOMBATS!
  147.  
  148.      The program makes up simple word problems about the
  149. names, things, and numbers you give it as you play. Each
  150. problem consists of two sentences which tell you what to do
  151. with the numbers to get the right answer. Some are tricky!
  152. All you have to do is enter the right answer - that means
  153. Press the numeral keys that make the number, and then
  154. press the Enter key. (The Return key works, too.) Good
  155. players like to press the NumLock key, and use the keypad
  156. for speed. You get credit for being RIGHT, not for
  157. being FAST. Enjoy yourself, and PAY ATTENTION.
  158.  
  159.      If you make a mistake, you can accept help by pressing
  160. Y or can try a problem again by pressing N - but you only
  161. get 3 tries. It is okay to use paper and pencil, but try
  162. not to count on your fingers. Help asks you questions that
  163. make the problem easier to understand.
  164.  
  165.      Good Luck! Press T to read more about Wombats.
  166.              Press the Enter key to play.
  167.  
  168. The game looks like this:
  169.  
  170. -------------------------{ 1 }---------------------------
  171.  
  172. Damiana worked for 49 days building door knobs.
  173.  
  174. When she finished, she had made only 7.
  175.  
  176.  
  177.      How many days does it take Damiana to make 1 door knob?
  178.  
  179. Damiana correctly responds by pressing the 7 and the [Enter] or
  180. [Return] keys, and the program responds:
  181.  
  182. That's RIGHT, Damiana.
  183.  1  right answer so far.
  184.  
  185. ----{ press Q to quit - any other key to continue }----
  186.     Wombats also for new names from time to time, offering
  187. players an opportunity for hilarity. The computer, however, is
  188. not too easily fooled, as this sample shows:
  189.  
  190. I need the name of a person.  >sienna
  191. The names of persons begin with a capital letter.
  192. Remember the SHIFT key. Please try again.
  193. I need the name of a person.  >Sienna
  194.    Is Sienna a he or a she?   >she
  195.  
  196.     The program counts vowels and rejects names with too few for
  197. its length:
  198.  
  199. I need the name of a person.  >Snnx
  200. I detect nonsense. I don't think "Snnx" is really
  201. someone's name. Please try again.
  202. I need the name of a person.  >
  203.  
  204.     Periodically, Wombats also refreshes its object inventory by
  205. asking for something new. This is the opportunity that children
  206. twist to their own ends, entering progressively more outrageous
  207. objects, people, and agencies, in an effort to "test" the
  208. tolerance of the computer:
  209.  
  210. I need the name of an object.>lawn mower
  211.  
  212.     In due course, a problem about lawn mowers is proposed:
  213.  
  214. -------------------------{ 4 }---------------------------
  215.  
  216. Last Monday, Damiana invented a machine that makes lawn
  217. mowers. That day, she made 63 lawn mowers.
  218.  
  219. The next day, she made 32 more.
  220.  
  221.  
  222.     How many lawn mowers does she have now?
  223.  
  224.     Suppose Damiana subtracts instead of adding, and answers 31.
  225. The program replies,
  226.  
  227.           -< wrong answer >- Do you want HELP ?
  228.  
  229. An affirmative answer - press the Y - starts the help dialogue:
  230.  
  231.   ...Okay:                     =============[HELP]=======
  232.  
  233.    What number do you start with? 63
  234.  
  235.    What is the second number? 32
  236.  
  237.    What do you do with these numbers: add, subtract,
  238.                                     multiply, or divide?
  239. Subtract
  240.      No. To do this problem, you need to add.
  241. The clue: she made 63, then makes 32 more.
  242. Shouldn't you add?y
  243.  
  244.   So do this problem:    63 + 32 = ?
  245.  
  246.     In this example, Damiana repeated her error, and the
  247. computer showed her the clue that shows this to be an addition
  248. problem.
  249.  
  250.     If the player cannot find the numbers to manipulate, the
  251. program retypes the sentences one at a time. In this example, the
  252. player perseverates in the wrong answer; equally stubbornly, the
  253. computer repeats the first part over again.
  254.  
  255.   ...Okay:                     =============[HELP]=======
  256.  
  257.    What number do you start with? 6
  258.      No. Read the first part again carefully:
  259. You and Sienna catch 12 ballet slippers in ballet slipper
  260. traps in the forest.
  261.  
  262.    What number do you start with? 6
  263.      No. Read the first part again carefully:
  264. You and Sienna catch 12 ballet slippers in ballet slipper
  265. traps in the forest.
  266.  
  267.    What number do you start with? 12
  268.  
  269.    What is the second number? 12
  270.      No. Read the second part again carefully:
  271. You dug 6 traps.
  272.  
  273.    What is the second number? 6
  274.  
  275.    What do you do with these numbers: add, subtract,
  276.                                     multiply, or divide?
  277. Add
  278.      No. To do this problem, you need to divide.
  279. You need to know how many each trap caught (as an average),
  280. so you divide 12 into 6 groups. Right?y
  281.  
  282.   So do this problem:    12 / 6 = 3
  283.  
  284.    You need to work on your division FACTS.
  285. The correct answer is 2 .
  286.  
  287.     In this example, the player made every mistake available
  288. (and some of them twice). We might be tempted to suspect the
  289. player of making mistakes just to explore the program. This is a
  290. rarified and valuable kind of learning, to be encouraged.
  291. Another problem reveals a built-in error - it could be called a
  292. bug, but I prefer to call it a feature:
  293.  
  294. -------------------------{ 10 }---------------------------
  295.  
  296. This morning, Rochelle looked in her pocket and found 42
  297. butterflys.
  298.  
  299. Later, she won 33 more in a bet with Damiana. (That's you.)
  300.  
  301.  
  302.     How many butterflys does she have now?
  303.  
  304.     English pluralizes irregularly, but computers are good at
  305. identical repetition. The simple algorithm for pluralizing is,
  306. add an "s" to the singular; the exceptions are numerous, and
  307. frequently curious. If you can devise an algorithm for correcting
  308. the irregularities, you are invited to "patch" the program. In
  309. the meantime, I rationalize this feature by noting that children
  310. usually spot the computer's error immediately, and are delighted
  311. that it should make such a stupid mistake. The player's mastery
  312. of the concept of irregular pluralization is reinforced. There is
  313. danger, of course, for students who have not mastered the
  314. concept, and accept everything the computer says as gospel.
  315. Garbage In, Gospel Out!
  316.  
  317.     After ten problems (or when the player accepts the
  318. computer's invitation to Quit) an inventory of the last set of
  319. problems is displayed:
  320.  
  321. Inventory coming!
  322.  
  323. ++++++++++++++++++++++++++++++++++++++++++++++++++++++
  324. rocking chairs :        40 - 2 = 38
  325. lawn mowers :           1 * 1 = 1
  326. umbrellas :             43 - 40 = 3
  327. red flowers :           34 - 20 = 14
  328. red flowers :           31 - 25 = 6               <2111
  329. wombats :               1 * 3 = 3
  330. ballet slippers :       12 / 6 = 2                <4112
  331. mongooses :             1 * 4 = 4
  332. wing nuts :             23 + 0 = 23
  333. butterflys :            42 + 33 = 75
  334.  
  335. Damiana, you have gotten 8 right, 2 wrong,
  336.    for a score of 80%.
  337.  
  338. If the player is doing well, the computer adds a "WELL DONE" (for
  339. better than 90% correct) and even "Very WELL DONE" (for better
  340. than 95%.) For every problem where Help was accepted and mistakes
  341. were made in deciphering the problem, a diagnostic code - the
  342. last column of four digit numbers - is included. Teacher features
  343.  
  344.      Wombats keeps track of errors made during play, and
  345. prints a diagnostic code with the problems missed. You can
  346. find an explanation of the codes, and recommended remedies
  347. in the book of instructions, TEACHING with an IBM PC.
  348.  
  349.  
  350. Diagnostic codes
  351.  
  352.     The units digit and the tens digit reflect the number of
  353. times the player missed the first and second numbers in the
  354. problem (respectively.) For example, in the lengthy example of
  355. Help given two pages previously, the last two digits of the
  356. diagnostic code would be 12, showing that the player
  357. misunderstood the first number in the problem twice, and the
  358. second number once.
  359.     The hundreds place reflects errors in the operation that the
  360. player proposes to solve the problem: the numeral represents the
  361. incorrect operation proposed. To refer again to the lengthy Help
  362. dialogue two pages back, the player proposes to add when the
  363. problem requires division; the diagnostic code would show a 1 in
  364. the hundreds place for addition, using the same numeration as in
  365. the program's set-up:
  366.  
  367.      1=Add  2=Subtract  3=Multiply  4=Divide
  368.  
  369.     The thousands place reflects errors in solving the numeric
  370. problem. Again, to take the example, a mistake is made in
  371. division, and so the diagnostic code will show a 4 in the
  372. thousands place, signifying a division error (since the numeric
  373. codes for operations, as noted above, are used here as well.)
  374.  
  375.     The diagnostic code for the example (as can be seen in the
  376. sample Inventory on the previous page) is 4112. As we noted in
  377. the example, a diagnostic code like this may show us that the
  378. student is not ready for this kind of work (in which case most
  379. problems will be followed by full diagnostics), or that her
  380. attention was wandering momentarily, or (most likely) that she
  381. was fooling the computer to see how deeply it was prepared to
  382. help.
  383.     When a student's comprehension of concept or operation is
  384. troubled, the diagnostic codes will reflect the trouble. A string
  385. of errors showing a digit in the hundreds place only indicates a
  386. problem with understanding the operation required by word
  387. problems. A string of errors in the thousands place might
  388. indicate a need to polish addition or multiplication facts.
  389. Errors in the less significant digits - the units and tens -
  390. reveals inattention of reading problems. More Teacher Features
  391.  
  392.      If you have a printer, you can make the game more
  393. interesting by turning the printer switch on - see line 8
  394. and the instructions. Then, whenever an inventory of problems 
  395. is ready for display, the player will be asked if a print-out
  396. is desired. Players can also print each problem by pressing
  397. P after entering the correct answer.
  398.  
  399.     To make changes in the program, you must attack your
  400. computer's BASIC interpreter, at least in a very minor way. The
  401. "switch" that tells the program whether or not a printer is
  402. connected is in line number 8, which looks like this:
  403.  
  404.     8 PR.SW=0:' printer switch  0 = off   1 = on
  405.  
  406. As you may remember from the earlier chapter on Controlling
  407. Computers, you may change this line by LISTing it, then moving
  408. the cursor (with the cursor arrows) over the 0, typing a 1, and
  409. pressing [Return]. To make the change permanent, you must
  410. SAVE"WOMBATS onto your disk.
  411.  
  412.      You may want to change Wombats in a number of ways;
  413. you may even want to take out the wombats (Oh, no!). Please
  414. refer to the instructions for help customizing the program.
  415.  
  416.     "If a program is finished, it's obsolete." Like Mrs.
  417. Winchester's famous mystery house, a program is alive only so
  418. long as someone is tinkering with it. This fact is acknowledged
  419. at the mainframe level of computing by the expensive presence of
  420. "hackers" who are constantly tweaking and tuning their machine's
  421. capabilities ...one would hope, to the betterment of its
  422. usefulness (although this is not always the case.) Programs that
  423. provide users with adaptability are much more useful, at any
  424. level, than routines which are unalterable; the most basic lesson
  425. computers are here to teach us is the necessity and delight of
  426. adaptability. Locked programs, which for reasons of security or
  427. profit are unalterable and often uncopyable, teach someone else's
  428. lessons, and in many cases, such lessons are exquisite (as we
  429. discussed earlier in the chapter,) but they can also be prey to
  430. inaccuracy, time, and our love for variety.
  431.     Children reflect this in their delight in changing the
  432. objects and persons in the Wombats problems. The teacher who
  433. takes on the role of Program Maintainer, can add to this delight
  434. by changing Wombats's favorite things from time to time. These
  435. are contained in two places. One set are here:
  436.  
  437.     9000 DATA wombat,rocking chair,tractor,dump truck,umbrella
  438.  
  439. and the other set in these lines:
  440.  
  441. 2730 OB$="apple":GOTO 2900
  442. 2740 OB$="peanut":GOTO 2900
  443. 2750 OB$="wing nut":GOTO 2900
  444. 2760 OB$="ballet slipper":GOTO 2900
  445. 2770 OB$="sharp pencil":GOTO 2900
  446. 2780 OB$="red flower":GOTO 2900
  447. 2790 OB$="wombat":GOTO 2900
  448. 2800 OB$="sea urchin":GOTO 2900
  449. 2810 OB$="door knob":GOTO 2900
  450. 2820 OB$="doll shoe":GOTO 2900
  451.  
  452. Changes may be accomplished as described above, but Prudent
  453. Programming Practice requires us to maintain a known-to-be-
  454. working version as well as a version under development. Serious
  455. changes in the program are possible, and certainly desirable; the
  456. serious tinkerer should use lots of common sense in planning and
  457. executing these changes. As we have mentioned before, education
  458. should proceed for all across the widest possible spectrum, and
  459. the teacher-maintainer is certainly included: in learning to
  460. program, and to observe the effects on the player-learners of my
  461. efforts, and continually improving the enhancements, continues an
  462. exciting and time-consuming process, in which adding to my own
  463. knowledge has always been the largest component.
  464.  
  465.     Teaching the computer's linear language to follow the
  466. strange and wonderful twists of the English language offers an
  467. opportunity to perfect our understanding of both. The linguistic
  468. format of Wombats's problems is,
  469.  
  470. S1$:    < Person > [ action ] { First number } < Object >[s]
  471.  
  472. S2$:  < P's Gender > [ action ] { Second number }
  473.  
  474. where the enclosures denote <data provided by the player>, [data
  475. provided by the program], and {data within ranges specified at
  476. the start.} In the simplest case, a problem that reads like this,
  477.  
  478. S1$:{Damiana}[ needs something special at school today, so]<
  479. she>[ takes along]{ 6}[ ]<rattlesnake>[s.]
  480.  
  481. S2$:[On the way to school,]< she>[ sees a hat by the road; under
  482. it]< she>[ finds]{ 13}[ more.]
  483.  
  484.     The code that puts those sentences together looks like this:
  485.  
  486. 3020 S1$=P1$+" needs something "
  487. 3030 S1$=S1$+"special at school today, so "+SX$+" takes along"
  488. 3040 S1$=S1$+STR$(N1)+" "+OB$:IF N1<>1 THEN GOSUB 2600
  489. 3050 S1$=S1$+".":S2$="On the way to school, "+SX$+" sees a hat by
  490. the "
  491. 3060 S2$=S2$+"road; under it "+SX$+" finds"
  492. 3070 S2$=S2$+STR$(N2)+" more.":GOTO 4970
  493.  
  494. A glossary of the symbols in that section: 
  495.                                             
  496. symbol   what it represents                 example value
  497.                                                        
  498. S1$      First sentence of problem          [ see   ]  
  499. S2$      Second sentence                    [ above ]  
  500.              These two sentences are                
  501.          put together by the computer                  
  502.          using the variables below as                  
  503.          building blocks.                              
  504.                                                        
  505. P1$      First person                       Sienna     
  506. SX$      Person's gender pronoun             she       
  507. OB$      the Object in question             rattlesnake
  508.              These are supplied by the              
  509.          player as prompted by the                     
  510.          program.                                      
  511.                                                        
  512. N1       First number                       6          
  513. N2       Second number                      13         
  514.              Randomly chosen by the                 
  515.          computer within limits set at                 
  516.          the start of the program.                     
  517.                                                        
  518. STR$(N1) a string derived by the             6         
  519.          computer consisting of a space     
  520.          (or, for a negative number, a      
  521.          hyphen) and the number or          
  522.          variable in parentheses.           
  523.          
  524.  
  525.     Each problem also has an associated QUestion, Correct
  526. Answer, and key phrase V$ determining the operation to be used in
  527. solving the problem for use by Help. For this problem, they are
  528. supplied at the start of the addition programs and by the line, 
  529.  
  530.        3010 QU$="does "+P1$:V$=SX$+" takes"+STR$(N1)+", then finds"+STR$(N2)
  531.  
  532. Subroutines: black boxes we need not understand
  533.  
  534.     Repetitive and complicated steps are often hidden in
  535. subroutines or at the beginnings and ends of processes. Two such
  536. external routines are used in this code segment.
  537.  
  538. GOSUB 2600
  539.  
  540.  
  541. GOTO 4970
  542.  
  543.  
  544.  
  545. Pluralizer  (a subroutine)
  546.     Adds an "s" to a working string T$
  547.  
  548. Problem poser (end of program generation)
  549.     Pops the question and gets the answer.
  550. All problem generators end with GOTO 4970
  551. unless they completely rebuild the question,
  552. in which the GOTO 4980
  553.     A rudimentary understanding of BASIC is needed if you want
  554. to decode, change, or augment the addition (starting at line
  555. 3000), subtraction (from line 4000), multiplication (from line
  556. 5000), or division (line 6000.) As complex and lengthy as it is,
  557. Wombats uses less than a third of the IBM's Basic workspace, and
  558. so there is plenty of room for growth!
  559.  
  560.     Among the division problems are two trick questions, wherein
  561. the trick is that the second number is one less than the divisor
  562. because an additional share is implicitly included in the
  563. problem:
  564.  
  565. Sienna found a bag with 12 rocking chairs in it.
  566. After school, she shared them with her 3 sisters.
  567.  
  568.     How many rocking chairs does each one have now? 4
  569.  
  570.           -< wrong answer >- Do you want HELP ?
  571.  
  572.     Since these are four to share the windfall - Sienna and her
  573. three sisters - the correct answer is 3.
  574.     The code that starts the question, calculates the normal
  575. Correct Answer, and randomly chooses the problem is contained in
  576. line 6000 and 6010. This problem results only when the N
  577. calculated in line 6000 is 1 and the program is sent to line
  578. 6020, where the problem itself is generated. Note the way an
  579. extra share of objects is added and the Correct Answer
  580. recalculated in line 6020.
  581.  
  582. 6000 QU$="does each one":CA=N1/N2:N=5*RND(1)+1:'                 division
  583. 6010 ON N GOTO 6020,6090,6140,6200,6240
  584. 6020 N1=N1+CA:CA=N1/(N2+1):S1$=P1$+" found a bag with"+STR$(N1)+" "+OB$
  585. 6030 IF N1<>1 THEN GOSUB 2600
  586. 6040 S1$=S1$+" in it.":S2$="After school, "+SX$+" shared them with "+PS$
  587. 6050 S2$=S2$+CHR$(29)+STR$(N2)+" sister":IF N2<>1 THEN GOSUB 2610
  588. 6060 V$="each person gets":S2$=S2$+".":N2=N2+1:GOTO 4970
  589.  
  590.  
  591.     When adding new problems, you need not wait patiently while
  592. the computer comes up with the right combination - which might
  593. take 20 or more problems as the program stands now. Because BASIC
  594. is superbly responsive to minor changes, you can change the line
  595. that chooses the next problem's operation from
  596.  
  597. 500 OP=INT(NL*RND(1)+1):'                     SUBROUTINES:    get operation
  598.  
  599.         to
  600.  
  601. 500 OP=4:'INT(NL*RND(1)+1):'                  SUBROUTINES:    get operation
  602.  
  603. for example, to test a new division problem. The addition of the
  604. colon and apostrophe tell the interpreter to ignore the rest of
  605. the line. With this change in place, only division problems will
  606. result. To include a new problem, the first of the operation's
  607. lines must be changed as well. To add a sixth division problem,
  608. line 6000 would changed to
  609.  
  610. 6000 QU$="does each one":CA=N1/N2:N=6*RND(1)+1:'                 division
  611.  
  612. but to test the problem, we might wish first to change the line to
  613.  
  614. 6000 QU$="does each one":CA=N1/N2:N=6:'*RND(1)+1:'               division
  615.  
  616. so that only the sixth problem will appear. When you are
  617. confident that the new problem is correct and literate, remember
  618. to take the comment marks (the :') out of the program. Otherwise,
  619. the players may complain that they are getting only one problem.
  620.  
  621. Credit where credit is due:
  622.  
  623.      Send us $5 and your thoughts: the Caspar Institute,
  624. Box 88 / Caspar  CA  95420. Please make copies of this
  625. program, but DO NOT remove the sharing information. 
  626.  
  627.     By all means, if you correct any bugs or add to the program
  628. significantly, take credit yourself. The credits are in the first
  629. lines of the program, but there is plenty of room for more
  630. credits; use lines 11 - 19. A credit line might look like,
  631.  
  632.      11 ' additional problems added by R. Elkan  10 Jan 86
  633.  
  634. 3897 words
  635. 11 January 1986
  636. revised 10 June 1986
  637.